/** @jsxImportSource @emotion/react */
import * as React from "react";
import {
    Text, LineColumn, InputLine,  Input, Select,  BlobInputList,
} from "customize-easy-ui-component";
import {
    InspectRecordLayout, InternalItemProps, SelectInput, useItemInputControl,
} from "../common/base";
import {useMeasureInpFilter} from "../common/hooks";


/**@property name : 附录显示名称, 和页面逻辑开关代码上需保持一致的。
 * @property ha : Hash路由标签
 * @property na : 表示不在【结论附录】当中出现的吗，但都出现在目录中的。不在附录表也没有安排目录表这页的也行。
 * @property ml : 该分项在【目录】中的文本显示题目。
 * @property do : 默认有做的分项报告
 * 报告中实际打印顺序看代码：
 * */
export const VsProjects默认=[
    {name:'检验证书',ha:'Certificate',na:true,do:true},
    {name:'进口压力容器监督检验结论报告',do:true,ha:'Conclusion'},
    {name:'进口压力容器资料审查报告',do:true,ha:'MaterialReview'},
    {name:'进口压力容器宏观检查报告',do:true,ha:'Structural'},
    {name:'壁厚测定报告',ha:'rp_thickm_'},
    {name:'安全附件检验报告',ha:'AdditionalTest'},
    {name:'耐压试验报告',ha:'rp_magnetic_'},
    {name:'泄漏试验报告',ha:'rp_magnetic_'},
    {name:'射线底片审查',ha:'rp_radio_'},
    {name:'射线检测报告',ha:'rp_radio_'},
    {name:'超声检测报告',ha:'rp_sonic_'},
    {name:'磁粉检测报告',ha:'rp_magnetic_'},
    {name:'渗透检测报告',ha:'rp_permeation_'},
    {name:'光谱检测报告',ha:'rp_optical_'},
    {name:'硬度检测报告',ha:'rp_hardness_'},
    {name:'金相分析报告' },
];


export const 评估结果选=["符合","不符合"];
interface Props  extends InternalItemProps{
    label?: string;
    titles?: any[];
    resultlist?: any[];
}
export const itemA下结论=['安全评定','检验结论','检验日期','检验日期1','新下检日','参检人'];
/**通用见证材料3项的： 约定：children [] 可以嵌入俩个儿子DOM节点，分别代表两个段落插入一个div块;
 * */
export const ConclusionContImp=
React.forwardRef((
    { children, show ,alone=true,redId,nestMd,label,titles,}:Props,  ref
) => {
    const [getInpFilter]=useMeasureInpFilter(null,itemA下结论,);
    const {inp, setInp} = useItemInputControl({ ref });
    return <InspectRecordLayout inp={inp} setInp={setInp} getInpFilter={getInpFilter} show={show} redId={redId}
                                nestMd={nestMd} alone={alone} label={label!}>
        <Text variant="h5">检验结论：</Text>
        <div css={{ alignItems: 'center'}}>
            按照《中华人民共和国特种设备安全法》的规定，该台（批）压力容器产品经我机构监督检验，安全性能
            <SelectInput value={inp?.检验结论 || ''} list={评估结果选} nMinW
                         style={{display: 'inline-flex', width: '7rem'}}
                         onChange={e => setInp({...inp, 检验结论: e.currentTarget.value || undefined})}/>
            《固定式压力容器安全技术监察规程》（TSG21-2016）的要求。
        </div>
        <LineColumn column={4}>
            <InputLine  label='安全状况等级评定为' >
                <Select inputSize="md" css={{minWidth:'140px',fontSize:'1.3rem',padding:'0 1rem'}}
                        value={ inp?.安全评定  ||''} onChange={e => setInp({ ...inp, 安全评定: e.currentTarget.value||undefined}) }>
                    <option></option>
                    <option>1级</option>
                    <option>2级</option>
                    <option>3级</option>
                    <option>4级</option>
                    <option>5级</option>
                </Select>
            </InputLine>
            <InputLine  label='检查结论' >
                <Select inputSize="md" css={{minWidth:'140px',fontSize:'1.3rem',padding:'0 1rem'}}
                        value={ inp?.检验结论  ||''} onChange={e => setInp({ ...inp, 检验结论: e.currentTarget.value||undefined}) }>
                    <option></option>
                    <option>符合</option>
                    <option>不符合</option>
                </Select>
            </InputLine>
            {/*【有问题】 ？直接用业务层面数据：检验人员 ispMens */}
            <InputLine  label='参检人员' >
                <BlobInputList  value={inp?.参检人 ||''} rows={4} onListChange={v => setInp({...inp,参检人:v || undefined}) }/>
            </InputLine>
            <InputLine label='设置检验日期'>
                <Input value={inp?.检验日期 || ''} type='date'
                       onChange={e => setInp({...inp, 检验日期: e.currentTarget.value})}/>
            </InputLine>
            <InputLine  label='检验起始日期' >
                <Input  value={inp?.检验日期1 ||''}  type='date'
                        onChange={e => setInp({ ...inp, 检验日期1: e.currentTarget.value}) } />
            </InputLine>
            <InputLine  label='下次定期检验日期' >
                <Input  value={inp?.新下检日 ||''}  type='date'
                        onChange={e => setInp({ ...inp, 新下检日: e.currentTarget.value}) } />
            </InputLine>
        </LineColumn>
    </InspectRecordLayout>;
});

